Apache Ant-এ Git Task একটি অতি গুরুত্বপূর্ণ টাস্ক যা Git রিপোজিটরি থেকে কোড ফেচ (fetch) বা পুল (pull) করার জন্য ব্যবহৃত হয়। এই টাস্কটি আপনার Ant বিল্ড স্ক্রিপ্টের মধ্যে Git-এর কার্যক্রম ইনক্লুড করে, যাতে আপনি বিল্ডের অংশ হিসেবে কোড রিপোজিটরি থেকে ফাইল বা আপডেট পেতে পারেন।
Git Task সাধারণত <git>
ট্যাগের মাধ্যমে ব্যবহৃত হয় এবং এটি Git রিপোজিটরি থেকে কোড ফেচ বা পুল করার জন্য Git কমান্ডগুলো চালায়।
<git>
<fetch remote="origin" branch="master" />
</git>
এখানে:
origin
বা অন্যান্য রিমোট রিপোজিটরি নাম)।এটি একটি সাধারণ উদাহরণ যেখানে Git থেকে কোড ফেচ করা হচ্ছে।
<project name="GitFetchExample" default="fetchCode" basedir=".">
<target name="fetchCode">
<git>
<fetch remote="origin" branch="main" />
</git>
</target>
</project>
এখানে:
origin
রিমোটের main ব্রাঞ্চ ফেচ করা হবে।Fetching code from origin repository, branch: main
এটি আপনার Ant স্ক্রিপ্টের মধ্যে Git কোড ফেচ করার প্রক্রিয়া পরিচালনা করবে।
আপনি Git Task ব্যবহার করে একটি নতুন রিপোজিটরি ক্লোন (clone) করতে পারেন। এটি Git clone কমান্ড চালানোর মতো কাজ করবে।
<project name="GitCloneExample" default="cloneRepository" basedir=".">
<target name="cloneRepository">
<git>
<clone repository="https://github.com/username/repository.git" />
</git>
</target>
</project>
এখানে:
Cloning repository https://github.com/username/repository.git
এটি Git রিপোজিটরি ক্লোন করবে এবং আপনার লোকাল মেশিনে কপি করবে।
Git pull কমান্ডটি ব্যবহার করে আপনি আপনার লোকাল রিপোজিটরি আপডেট করতে পারেন। এটি আপনার লোকাল রিপোজিটরির পরিবর্তনগুলিকে রিমোট রিপোজিটরির সাথে মিলে যায়।
<project name="GitPullExample" default="pullCode" basedir=".">
<target name="pullCode">
<git>
<pull remote="origin" branch="develop" />
</git>
</target>
</project>
এখানে:
origin
).develop
ব্রাঞ্চ থেকে কোড পুল করা হবে।Pulling code from origin repository, branch: develop
এটি origin রিমোট রিপোজিটরি থেকে develop ব্রাঞ্চের সর্বশেষ আপডেট নিয়ে আসবে।
Git checkout কমান্ডটি ব্যবহার করে আপনি একটি নির্দিষ্ট ব্রাঞ্চে সুইচ করতে পারেন। নিচে একটি উদাহরণ দেয়া হলো যেখানে git checkout ব্যবহার করা হচ্ছে।
<project name="GitCheckoutExample" default="checkoutBranch" basedir=".">
<target name="checkoutBranch">
<git>
<checkout branch="feature-branch" />
</git>
</target>
</project>
এখানে:
feature-branch
ব্রাঞ্চে সুইচ করা হবে।Checking out branch feature-branch
এটি feature-branch ব্রাঞ্চে সুইচ করবে।
আপনি Git status চেক করতে <git>
টাস্ক ব্যবহার করতে পারেন, যা রিপোজিটরির বর্তমান অবস্থা দেখাবে।
<project name="GitStatusExample" default="checkStatus" basedir=".">
<target name="checkStatus">
<git>
<status />
</git>
</target>
</project>
এখানে:
Checking git status...
এটি রিপোজিটরির স্ট্যাটাস দেখাবে।
যদি আপনার Git রিপোজিটরি প্রাইভেট হয়, তবে আপনি authentication ব্যবহার করে Git রিপোজিটরি থেকে কোড ফেচ বা পুল করতে পারেন। এটি সাধারণত username এবং password বা SSH key ব্যবহার করে করা হয়।
<project name="GitAuthenticationExample" default="fetchPrivateRepo" basedir=".">
<target name="fetchPrivateRepo">
<git>
<fetch remote="origin" branch="main">
<username value="your-username" />
<password value="your-password" />
</fetch>
</git>
</target>
</project>
এখানে:
Fetching code from origin repository, branch: main
এটি প্রাইভেট রিপোজিটরি থেকে কোড ফেচ করবে।
<git>
টাস্কটি Apache Ant-এ Git রিপোজিটরি থেকে কোড ফেচ, পুল, ক্লোন, চেকআউট, বা স্ট্যাটাস চেক করার জন্য ব্যবহৃত হয়। আপনি fetch, clone, pull, checkout, এবং status টাস্ক ব্যবহার করে Git কার্যক্রম পরিচালনা করতে পারেন। আপনি Ant বিল্ড স্ক্রিপ্টে Git কার্যক্রম স্বয়ংক্রিয়ভাবে চালাতে পারবেন, যেমন কোড ফেচ করা, রিপোজিটরি ক্লোন করা, বা অন্য ব্রাঞ্চে সুইচ করা। Git রিপোজিটরির সাথে ইন্টিগ্রেশন অটোমেটেড বিল্ড, ডিপ্লয়মেন্ট বা টেস্টিং প্রক্রিয়া উন্নত করতে সহায়ক।